package udpdemo;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;

/**
 * upd接收端
 *      （加个端口号，也可以作为发送端，接收消息）
 *      发短信，不需要知道对方的地址
 */
public class UdpReceiveDemo01 {
    public static void main(String[] args) throws IOException {
        // 开放端口，等待发送端链接
        DatagramSocket socket = new DatagramSocket(9090);

        // 准备接收数据的数据包
        byte[] buffer = new byte[1024];
        DatagramPacket packet = new DatagramPacket(buffer,0,buffer.length);

        // 阻塞接收数据，放到准备好的数据包里
        socket.receive(packet);

        // 输出发送方的Ip,数据
        System.out.println(packet.getAddress().getHostAddress() +":"+ packet.getAddress().getHostName());
        System.out.println(new String(packet.getData(), 0, packet.getLength()));

        // 关闭连接
        socket.close();
    }
}
